﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace LHS.Win
{
    public partial class frmDoiMatKhau : Form
    {
        // Methods
        public frmDoiMatKhau()
        {
            this.InitializeComponent();
        }
        private void btChange_Click(object sender, EventArgs e)
        {
            if (this.tbUserName.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập tên Truy Nhập", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbOldPass.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập Mật Khẩu Cũ", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbNewPass.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập Mật Khẩu Mới", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbConfirm.Text == "")
            {
                MessageBox.Show("Vui lòng nhập lại Mật Khẩu Mới", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbConfirm.Text != this.tbNewPass.Text)
            {
                MessageBox.Show("Mật Khẩu không đối xứng", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbNewPass.Text == this.tbOldPass.Text)
            {
                MessageBox.Show("Mật Khẩu mới không thể tr\x00f9ng với mật khẩu cũ", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbNewPass.Text.Length < 6)
            {
                MessageBox.Show("Mật Khẩu phải từ 6 - 10 ký tự", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else
            {
                string s = this.tbOldPass.Text.Trim();
                try
                {
                    LHS.Core.Authority.AuthorityController objAuthController = new LHS.Core.Authority.AuthorityController();
                    DataTable dt = objAuthController.LoginSystem(this.tbUserName.Text, this.tbOldPass.Text);
                    if (dt == null || dt.Rows.Count == 0)
                    {
                        MessageBox.Show("Tên Đăng Nhập hoặc Mật Khẩu không hợp lệ!", "Lỗi Nhập", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        string str2 = this.tbNewPass.Text.Trim();
                        objAuthController.ChangePassword(this.tbUserName.Text,str2);
                        this.tbUserName.Text = "";
                        this.tbOldPass.Text = "";
                        this.tbNewPass.Text = "";
                        this.tbConfirm.Text = "";
                        this.tbUserName.Focus();
                        MessageBox.Show("Mật khẩu đã được thay đổi!", "Đổi Mật Khẩu thành công", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    }
                }
                catch (Exception exception)
                {
                    Class.ShowException(exception);
                }
            }
        }

        private void btExit_Click(object sender, EventArgs e)
        {
            base.Close();
        }
        private void tbConfirm_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == '\r')
            {
                this.btChange_Click(sender, e);
            }
        }

    }
}